A very classical subject in Commutative Algebra is the Invariant Theory of finite groups. In our work on 3-dimensional topology (S. King, Ideal Turaev-Viro invariants. To appear in Top. Appl.), we found certain examples of group actions on polynomial rings. When we tried to compute the invariant ring using Singular or Magma, it turned out that the existing algorithms did not suffice. We present here a new algorithm for the computation of secondary invariants, if primary invariants are given. Our benchmarks show that the implementation of our algorithm in the library "finvar" of Singular marks a dramatic improvement in the manageable problem size. A particular benefit of our algorithm is that the computation of irreducible secondary invariants does not involve the explicit computation of reducible secondary invariants, which may save resources. The implementation of our algorithm in Singular is for the non-modular case; however, the key theorem of our algorithm holds in the modular case as well and might be useful also there.